package com.monika.main.system.servcie.impl;

import com.monika.main.system.constant.CacheConstant;
import com.monika.main.system.dao.SysConfigDao;
import com.monika.main.system.servcie.ISysConfigService;
import com.monika.main.system.util.RedisCache;
import com.monika.main.system.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * Author whh
 * Date 2023/04/17/ 21:52
 * <p></p>
 */
@Service
public class SysConfigServiceImpl implements ISysConfigService {
    @Autowired
    private SysConfigDao sysConfigDao;

    @Override
    public String querySysConfigValueByConfigKey(String configKey) {
        return sysConfigDao.querySysConfigValueByConfigKey(configKey);
    }

    @Override
    public String querySysConfigValueCache(String configKey) {
        String val = RedisCache.get(CacheConstant.SYS_CONFIG_KEY + configKey);
        if (StringUtil.isEmpty(val)) {
            val = sysConfigDao.querySysConfigValueByConfigKey(configKey);
            RedisCache.put(CacheConstant.SYS_CONFIG_KEY + configKey, val);
            return val;
        }
        return val;
    }
}
